<?php

/**
 * EmsFormField form.
 *
 * @package    ems1
 * @subpackage form
 * @author     Your name here
 * @version    SVN: $Id: sfDoctrineFormTemplate.php 23810 2009-11-12 11:07:44Z Kris.Wallsmith $
 */
class EmsFormFieldForm extends BaseEmsFormFieldForm
{
    public function configure()
    {
        unset ($this['created_at'], $this['updated_at'], $this['form_id'], $this['is_enabled']);

        if ($this->object->exists())
        {
            $this->widgetSchema['is_enabled'] = new sfWidgetFormInputCheckbox(array('label' => 'Habilitar'));
            $this->validatorSchema['is_enabled'] = new sfValidatorBoolean();
        }

        $this->validatorSchema['options'] = new sfValidatorRegex(
                array(
                    'pattern' => '^([a-zA-Z0-9\á\é\í\ó\ú\Á\É\Í\Ó\Ú\ñ\Ñ]*?\s*?\,?\s*?){1,10}^',
                    'max_length' => 255,
                    'required' => false
                ),
                array(
                    'invalid' => 'Debe indicar máximo 10 opciones separadas por "," y solo caracteres alfanuméricos.',
                    'max_length' => 'El máximo de caracteres es 255.'
                ));

        $this->widgetSchema->setLabels(array(
                'title'         => 'Etiqueta:',
                'is_key'        => 'Clave:',
                'is_unique'     => 'Único:',
                'is_required'   => 'Requerido:',
                'field_type_id' => 'Tipo de campo:',
                'options'       => 'Opciones:'
            ));
        $this->widgetSchema->setHelp('options', 'Indique las opciones separadas por comas (,).');
    }
}
